/** 资金性质（收入/指出） */
export enum ENUM_PAYMENT {
  NONE = -1,

  /** 收入 */
  INCOME = 1000,
  /** 支出 */
  EXPENSE = 2000,
}

/** 资金状态（划拨中/划拨结束） */
export enum ENUM_PAYMENT_STATUS {
  NONE = -1,

  /** 资金划拨中 */
  PENDING = 1000,
  /** 资金划拨结束 */
  END = 1001,
  /** 划拨过程中发生错误 */
  FAIL = 1002,
}

/** 微信支付类型 */
export enum ENUM_PAYMENT_WECHAT_MP_TYPE {
  NONE = "NONE",
  NATIVE = "NATIVE",
}

/** 微信支付结果
 * @doc https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=9_1
 * @doc https://developers.weixin.qq.com/community/develop/doc/000682dbdf03b86b1e70388f561000?highLine=REVOKED
 * @PAYERROR 支付失败（仅付款码支付会返回）
 * @USERPAYING 用户支付中（仅付款码支付会返回）
 * @REVOKED 已撤销（仅付款码支付会返回）
 * @CLOSED 已关闭
 */
export enum ENUM_PAYMENT_WECHAT_MP_STATE {
  /** 🔴本地订单创建完成后，由于各种原因没有微信的远程订单 */
  NONE = "NONE",

  /** 🟡微信远程订单创建完成后，默认是未支付状态 */
  NOTPAY = "NOTPAY",

  /** 🟡用户扫描二维码（Native支付）将远程订单从未支付，变为支付中 */
  USERPAYING = "USERPAYING",

  /** 🟢远程订单从 “未支付” 由于超时变为作废（最终状态）*/
  CLOSED = "CLOSED",

  /** 🟢远程订单从 “未支付” 由于微信内部错误变为支付错误（最终状态）*/
  PAYERROR = "PAYERROR",

  /** 🟢远程订单从 “未支付” 变为已经取消（最终状态）*/
  REVOKED = "REVOKED",

  /** 🟢远程订单从 “未支付” 变为支付成功（最终状态）*/
  SUCCESS = "SUCCESS",

  /** 🟢远程订单从 “未支付” 变为支付成功，再开始另外的退款流程（最终状态）*/
  REFUND = "REFUND",
}
